Skip to content

bpo-43031: Set a timeout when running tests in PGO build#24339

Merged
vstinner merged 1 commit into
python:masterfrom
vstinner:pgo_timeout
Jan 27, 2021
Merged

bpo-43031: Set a timeout when running tests in PGO build#24339
vstinner merged 1 commit into
python:masterfrom
vstinner:pgo_timeout

Conversation

@vstinner
Copy link
Copy Markdown
Member

@vstinner vstinner commented Jan 26, 2021

Pass --timeout=$(TESTTIMEOUT) option to the default profile task
"./python -m test --pgo" command.

https://bugs.python.org/issue43031

Pass --timeout=$(TESTTIMEOUT) option to the default profile task
"./python -m test --pgo" command.
@vstinner vstinner changed the title bpo-42988: Set a timeout when running tests in PGO build bpo-43031: Set a timeout when running tests in PGO build Jan 26, 2021
Copy link
Copy Markdown
Member Author

@vstinner vstinner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cc @methane @pablogsal @zware: Do you think that 20 minutes per test is enough for everyone?

If someone has issues with the new timeout, TESTTIMEOUT can be overriden when running make: make TESTTIMEOUT=3600 (1 hour).

In regrtest --pgo, the slowest test should be asyncio, and it takes around 5 minutes.

If 20 min is an issue, maybe we can increase the default to 30 minutes?


It's the first time that I see a hang while on a PGO build. So another option is to consider that no timeout is better by default (reject this PR).

@pablogsal
Copy link
Copy Markdown
Member

cc @methane @pablogsal @zware: Do you think that 20 minutes per test is enough for everyone?

If someone has issues with the new timeout, TESTTIMEOUT can be overriden when running make: make TESTTIMEOUT=3600 (1 hour).

In regrtest --pgo, the slowest test should be asyncio, and it takes around 5 minutes.

If 20 min is an issue, maybe we can increase the default to 30 minutes?


It's the first time that I see a hang while on a PGO build. So another option is to consider that no timeout is better by default (reject this PR).

I would be fine with that but we should certainly do something about test_asyncio

@vstinner
Copy link
Copy Markdown
Member Author

I would be fine with that but we should certainly do something about test_asyncio

I don't think that we should do anything for "aarch64 RHEL7 LTO + PGO 3.7", since 3.7 branch no longer accept bug fixes.

@stratakis
Copy link
Copy Markdown
Contributor

I'm thinking of removing that config from the aarch64 RHEL7 buildbots, as it's the only one that disconnects during a PGO build when test_asyncio runs.

@vstinner
Copy link
Copy Markdown
Member Author

I'm thinking of removing that config from the aarch64 RHEL7 buildbots, as it's the only one that disconnects during a PGO build when test_asyncio runs.

I created python/buildmaster-config#228 for that.

@methane
Copy link
Copy Markdown
Member

methane commented Jan 26, 2021

Do you think that 20 minutes per test is enough for everyone?

I think so. And I think tests takes longer than 20min should not be run by default.

@vstinner vstinner merged commit 6790005 into python:master Jan 27, 2021
@vstinner vstinner deleted the pgo_timeout branch January 27, 2021 10:16
@vstinner
Copy link
Copy Markdown
Member Author

The timeout can cause some issues, so I prefer to not backport it. https://bugs.python.org/issue43031 is not a major issue, it only impacted Python 3.7. I added the timeout in Python 3.10, it is enough for now.

Thanks for your review @pablogsal and @methane.

adorilson pushed a commit to adorilson/cpython that referenced this pull request Mar 13, 2021
)

Pass --timeout=$(TESTTIMEOUT) option to the default profile task
"./python -m test --pgo" command.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants